This invention relates to data communication via cable television networks, and, more particularly, to a method for measuring the data transmission rate (i.e., the bit rate) through various channels in such a system and for providing different classes of service based on the data transmission rates in the channels.
In data communication networks, it is often necessary to test communications between any two nodes in the network. This can be accomplished by having a first node on the network request a second node on the network to xe2x80x9cloop-backxe2x80x9d a test packet . In this manner, the first node can now determine that communication with the second node is possible as well as determine the round trip time for the test packet between the two nodes.
Networking protocols, such as the Internet Protocol (IP), also permit the estimation of round trip time by use of a looped-back test packet. In IP networks, the Internet Control Message Protocol (ICMP) permits control and information messages, including echo request and echo reply messages to be passed between different nodes. The ICMP also permits messages incorporating a timestamp request and timestamp reply messages which permit a transit time estimate to be made in both transit directions.
Users may also send ICMP echo requests using a TCP/IP (Transmission Control Protocol/Internet Protocol) utility called xe2x80x9cpingxe2x80x9d (Packet InterNet Groper) and users may specify the number and size of test packets for which round trip times are returned.
High speed data communication systems are capable of transmitting digital information in the form of packets at data rates of 10 Mbps to any remote location such as a home, school or office using standard cable television channels, systems and components. Such a multi-user, high speed, asymmetric, data communication system employing cable television channels is described in U.S. Pat. No. 5,675,732 ( the ""732 patent), which is incorporated herein by reference.
In that latter communication system, it is often necessary to view data traffic conditions in each communication channel and take further actions based on the information learned. The TCP/IP utility called xe2x80x9cpingxe2x80x9d (Packet InterNet Groper), described above, can be used to determine the average bit rate available in each channel in such a TCP/IP system that utilizes cable television channels as the transmission media. However, the xe2x80x9cpingxe2x80x9d command is no t suitable f or this particular application. This is s o because i n an asymmetric communication system such as the one described in the ""732 patent, the low speed telephone line will dominate the computation of the data rate through any channel.
This invention describes a traffic monitoring method to overcome this problem. Under the methods described in this invention, the time needed for a test message to travel the low speed telephone link is eliminated from the computation to measure the average data transmission rate, i.e., bit rate, for a channel.
The present invention provides a method to compute the average data transmission rate available in each channel in a data communication, TCP/IP system that utilizes in part cable television channels as the transmission media. The method employs a bandwidth manager and a test personal computer, both of which are connected to the cable channel system to determine the average bit rate through any channel in the system. By utilizing computers connected to the cable system to make bit rate measurements, the problems associated with having a low speed telephone link that dominates the measurement is avoided.
The method to measure the bit rate in a channel include s the steps of: providing a bandwidth manager for the data communication system; connecting a test personal computer to the system, the test PC being cap able of communicating with a number of channels in the system; synchronizing time clocks on both the bandwidth manager and the test PC and preferably performing this synchronizing step in light traffic conditions; sending a test message of fixed length from the bandwidth manager to the personal computer via a chosen channel with a timestamp; and computing the data transmission rate in the chosen channel by dividing the number of bits in the test message by the difference in time between when the test message is received by the personal computer and the timestamp placed on the test message by the bandwidth manager.
Average data transmission rates via the chosen channel are computed by averaging multiple measurements of the data transmission rate through the chosen channel. Other channels in the system are then assigned through the bandwidth manager to the personal computer for making measurements of the data transmission rate.
The data transmission rates through the various channels are stored in a database in the bandwidth manager and other computers in the system are permitted to access this database to display the data transmission rates through different channels in the system.
Once the data transmission rates are determined for all channels in the system, different classes of service through different channels (e.g., 256 Kbps service in channel 1 and 64 Kbps service in channel 2) can be provided. In addition, new sessions through a specific class of service may be granted to a user if the measured data transmission rate through the user""s channel exceeds the bandwidth allocated to the channel and the number of sessions previously assigned to the user is less than the number of sessions permitted. Finally, users may be switched from higher data transmission rate channels to lower data transmission rate channels or vice versa to better accommodate additional users in the system.